import {initUrl} from  "../../utils/config.js"
import request from "../../utils/request.js"

Page({

  /**
   * 页面的初始数据
   */
  data: {
    // 手机号码
    phone:"1562613449",
    // 密码
    password:"abc1562613449"
  },

  // 修改输入框改变data中数据
  changeValue(e){
    const type = e.target.dataset.type
    this.setData({
      [type]:e.detail.value
    })
  },

  // 登录校验
  async loginHandle(){
    const {phone,password} = this.data
    // if(!(/^1[3-9]\d{9}$/).test(phone)){
    //   wx.showToast({
    //     title:"请输入正确的手机格式",
    //     icon:"none"
    //   })
    //   return 
    // }
    // if(!(/^[0-9a-zA-z]{6}$/).test(password)){
    //   wx.showToast({
    //     title:"请输入正确格式的密码",
    //     icon:"none"
    //   })
    //   return 
    // }

    // 校验成功发送请求
    const res = await request("/login/cellphone",{phone,password})
    // 策略模式，每种策略对应一种逻辑
    const strategies = {
      200(){
        wx.showToast({
          title:"登录成功，即将跳转页面",
          icon:"none",
          success(){
            const { nickname, avatarUrl, userId } = res.profile
            wx.setStorage({
              key: "userInfo",
              data: JSON.stringify({
                nickname,
                avatarUrl,
                userId
              })
            })
          }
        })
        setTimeout(()=>{
          wx.switchTab({
            url: '../personal/personal',
          })
        },1500)
      },
      400(){
        wx.showToast({
          title:"手机号错误，请重新输入",
          icon:"none"
        })
      },
      501(){
        wx.showToast({
          title:"账号不存在，请先进行注册",
          icon:"none"
        })
      },
      502(){
        wx.showToast({
          title:"密码错误，请重新输入",
          icon:"none"
        })
      },
      509(){
        wx.showToast({
          title:"密码错误超过限制,账号已被锁定",
          icon:"none"
        })
      }
    }
    // 根据返回值的code值选择对应的策略
    strategies[res.code]()
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})